
SC JointData can be used to either set or get information about a joint.
It requires a Joint input which can be accessed from either SCJointOperator or SCJointCounterOperator.
All joints have a specific Joint ID integer and this integer can actually
also be used as the Joint input.
SCJointOperator can only define Particle From/To, Position From/To/World,
and Type, so in order to set additional joint properties SC
JointDataOperator is necessary.
Among the many useful features of this operator are its ability to set
a joint's ability to break, it's breaking velocity & rotation thresholds,
to define or redefine joint types and Particle To/From connections, and
to track when a joint has broken (via the Broken output, which outputs
1 continuously when a joint is broken).
ON - (Bool) This input data
stream determines whether the operator is considered 'on' or 'off.' You
can connect other operators to this input channel such as a Bool
Helper to activate/deactivate the whole operator.
Time - (Time) This input data stream is used to define the local
time for the operator when the user wants to override the default system
time.
Joint - inputs the joint ID of the joint to be changed or reads
the data from the joint.
Type - lets you set the type of Joint that will be created between
the two particles. Possible options are:
Particle From - sets the
"From" particle ID that will be used to create a Joint
Important
You must supply both object space positions when using these inputs.
One input alone will cause an invalid Joint. This Joint position in
space should be the same point in world space for
each of positions you feed into these inputs.
Position From - defines
the joint position in object space as seen from the "From" particle
where the Joint will be placed between the two Joint partners.
Alignment From - inputs the Joint's alignment in object space
coordinates that needs to be created between the two particles.
Particle To - sets the "To" particle ID that will be
used to create a Joint
Position To - defines the joint position in object space as seen
from the "To" particle where the Joint will be placed between
the two Joint partners.
Alignment To - inputs the Joint's alignment in object space coordinates
that needs to be created between the two particles.
World Position - inputs
the Joint's position in world space coordinates that needs to be created
between the two particles.
World Alignment - inputs the Joint's alignment in world space
coordinates that needs to be created between the two particles.
Breakable - sets if a joint is breakable or not. (a value of 1
means breakable)
Break Vel. Threshold - sets the maximum velocity allowed before
the Joint "breaks off"
Break Rot. Threshold - sets the maximum allowed rotational speed
(angle change per second) before the Joint is broken
Broken - sets this input to 1 to break the joint immediately
Collision - connect a value of 1 to this input to allow for collision
detection between Joint objects
Spring - defines the Spring Power, the higher this value the more
power the spring will have
Angle - defines the rotational constraining angle of this joint
Initial Angle - sets the starting angle of this Joint type
Length - defines the "length" of this joint (Slider
Joint)
Initial Length - sets the starting length (position) of this Joint
type (Slider Joint)
Wobble - defines the "wobble" factor of this joint (Wobble
Joint)
Friction - sets a friction value for this Joint
Damping - sets the dampening factor of this Joint type
Spring Initial - defines a "pre-loading" amount for
the spring. Positive values will force to push the object away and negative
values will pull the objects towards the Joint axis point. This value
is visualized in the view port in the form of a rectangular dot, either
moving up or down from the joint axis point.
Type - outputs the type
of Joint that will be created between the two particles. Possible options
are:
Particle From - outputs
the "From" particle ID that was used to create a Joint
Position From - outputs the joint position in object space as
seen from the "From" particle where the Joint will be placed
between the two Joint partners.
Alignment From - outputs the Joint's alignment in object space
coordinates that needs to be created between the two particles.
Particle To - outputs the "To" particle ID that will
be used to create a Joint
Position To - outputs the joint position in object space as seen
from the "To" particle where the Joint will be placed between
the two Joint partners.
Alignment To - outputs the Joint's alignment in object space coordinates
that needs to be created between the two particles.
World Position - outputs
the Joint's position in world space coordinates that needs to be created
between the two particles.
World Alignment - outputs the Joint's alignment in world space
coordinates that needs to be created between the two particles.
Breakable - outputs the state of a joint, if a joint is breakable
or not. (a value of 1 means breakable)
Break Vel. Threshold - outputs the maximum velocity allowed before
the Joint "breaks off"
Break Rot. Threshold - outputs the maximum allowed rotational
speed (angle change per second) before the Joint is broken
Broken - outputs the status of the Joint an output value of 1
indicates a broken joint.
Collision - outputs a value of 1 when collision detection between
Joint objects is active, 0 when inactive
Spring - outputs the Spring Power, the higher this value the more
power the spring will have
Angle - outputs the rotational constraining angle of this joint
Initial Angle - outputs the starting angle of this Joint type
Length - outputs the "length" of this joint (Slider
Joint)
Length Initial - outputs the starting length (position) of this
Joint type (Slider Joint)
Wobble - outputs the "wobble" factor of this joint (Wobble
Joint)
Friction - outputs a friction value for this Joint
Damping - outputs the damping factor of this Joint type
Spring Initial - outputs a "pre-loading" amount for
the spring. Positive values will force to push the object away and negative
values will pull the objects towards the Joint axis point. This value
is visualized in the view port in the form of a rectangular dot, either
moving up or down from the joint axis point.
![]()
The SC Joint operator offers only a few settings to adjust. Find below
the possible settings:
Collision - lets you choose from the drop down menu the physics
engine solver to use for the Joint simulation. All compatible solvers
found in the thinkingParticles setup will be automatically listed.